package com.ydc.ln.tutorial;

import java.util.Scanner;
/**
 * 2011-07-15
 * 编写一个程序，要求从键盘上输入一个字符串，然后计算并输出字符串中的大写英文字母数，小写英文字母数以及非英文字母数。
 * @author ydc
 *
 */
public class Test01 {

	public int digitNum = 0;
	public int upperNum = 0;
	public int lowerNum = 0;
	public int otherNum = 0;

	String digitArr = "";
	String upperArr = "";
	String lowerArr = "";
	String otherArr = "";

	public void calculate() {

		System.out.println("请输入一串字符：");
		Scanner input = new Scanner(System.in);
		String str = input.next();
		System.out.println(str);
		for (int i = 0; i < str.length(); i++) {
			char ch = str.charAt(i);
			if (ch >= '0' && ch <= '9') {
				digitNum++;
				digitArr += ch + " ";
			} else if (ch >= 'A' && ch <= 'Z') {
				upperNum++;
				upperArr += ch + " ";
			} else if (ch >= 'a' && ch <= 'z') {
				lowerNum++;
				lowerArr += ch + " ";
			} else {
				otherNum++;
				otherArr += ch + " ";
			}

		}

	}

	public static void main(String[] args) {
		Test01 s = new Test01();
		s.calculate();
		System.out.println("数字的个数为：" + s.digitNum + "\t\t它们分别为：" + s.digitArr);
		System.out.println("大写字母的个数为：" + s.upperNum + "\t它们分别为：" + s.lowerArr);
		System.out.println("小写字母的个数为：" + s.lowerNum + "\t它们分别为：" + s.upperArr);
		System.out.println("特殊字符的个数为：" + s.otherNum + "\t它们分别为：" + s.otherArr);
	}
}
